#!usr/bin/env python  
# -*- coding:utf-8 _*-
""" 
@author:robot
@file: splice01_category_type.py 
@version:
@time: 2022/02/11 
"""
from TapClientCaseData.ColumnGenerateData.dynamic.base.base02_oracle import *

__all__ = ['generate_columns_data', 'PK', 'ORACLE_ALL_TYPE',
           'ORACLE_ALL_TYPE_COLUMNS',
           'ORACLE_CHARACTER_ALL_COLUMNS',
           'ORACLE_NUMERIC_ALL_COLUMNS',
           'ORACLE_DATE_ALL_COLUMNS',
           'ORACLE_LOB_ALL_COLUMNS',
           'ORACLE_RAW_ALL_COLUMNS',
           # ROWID, USER DEFINED TYPES, SUPPLIED 暂不支持
           ]

# CHARACTER ALL TYPE
ORACLE_CHARACTER_ALL_TYPE = [
    PK, CHAR, VARCHAR2, NCHAR, NVARCHAR2
]
# NUMERIC ALL TYPE
ORACLE_NUMERIC_ALL_TYPE = [
    PK, NUMBER, FLOAT, BINARY_FLOAT, BINARY_DOUBLE
]
# DATE ALL TYPE
ORACLE_DATE_ALL_TYPE = [
    PK, DATE, TIMESTAMP, TIMESTAMP_WITH_TIME_ZONE,
    TIMESTAMP_WITH_LOCAL_TIME_ZONE,
    INTERVAL_YEAR_TO_MONTH,
    INTERVAL_DAY_TO_SECOND,
]

# LOB ALL TYPE
ORACLE_LOB_ALL_TYPE = [
    PK,
    # LONG,
    BLOB, CLOB, NCLOB, BFILE
]

# RAW ALL TYPE
ORACLE_RAW_ALL_TYPE = [
    PK, RAW,
    LONG_RAW
]

ORACLE_ALL_TYPE = [PK] + ORACLE_CHARACTER_ALL_TYPE[1:] + \
                  ORACLE_NUMERIC_ALL_TYPE[1:] + \
                  ORACLE_DATE_ALL_TYPE[1:] + \
                  ORACLE_LOB_ALL_TYPE[1:] + \
                  ORACLE_RAW_ALL_TYPE[1:]

# CATEGORY COLUMNS
ORACLE_ALL_TYPE_COLUMNS = generate_columns_data(ORACLE_ALL_TYPE)
ORACLE_CHARACTER_ALL_COLUMNS = generate_columns_data(ORACLE_CHARACTER_ALL_TYPE)
ORACLE_NUMERIC_ALL_COLUMNS = generate_columns_data(ORACLE_NUMERIC_ALL_TYPE)
ORACLE_DATE_ALL_COLUMNS = generate_columns_data(ORACLE_DATE_ALL_TYPE[:-2])
ORACLE_LOB_ALL_COLUMNS = generate_columns_data(ORACLE_LOB_ALL_TYPE)
ORACLE_RAW_ALL_COLUMNS = generate_columns_data(ORACLE_RAW_ALL_TYPE)

# print(ORACLE_ALL_TYPE_COLUMNS)
# print(ORACLE_CHARACTER_ALL_COLUMNS)
# print(ORACLE_NUMERIC_ALL_COLUMNS)
# print(ORACLE_DATE_ALL_COLUMNS)
# print(ORACLE_LOB_ALL_COLUMNS)
# print(ORACLE_RAW_ALL_COLUMNS)
